In the field of Information Technology (IT), packaged business applications are delivered to IT customers with many “out of the box” functionalities and content. The intent of these functionalities and content is to have customers install and use the business applications as quickly as possible. However, not all customer requirements are met by what is delivered “out of the box”.
As a result, configuration and customization of the business applications is required to ensure the business applications meet the specific needs of the customer's end users. Configuration and customization activity usually occurs in a development environment resulting in the creation of additional content or modification of the “out of the box” content, that must later be “promoted” (or loaded) in a controlled manner into upper IT environments such as “stage”, “test” and finally, “production” environments where the business applications are opened to end users. During this promotion (or data loading) activity, it is important to ensure that the integrity of upper IT environments is preserved at all times and business applications function as they were designed and as the end users expect them to behave.
Often, configuration and customization is done incorrectly, or the content is promoted in an incomplete manner such that upper IT environments are compromised. Many business applications report errors when loading, displaying or executing such incorrect or incomplete content. A number of functions may no longer be performed due to ‘bad data’. This leads to higher costs in implementing and maintaining package business application solutions and ensuring end user productivity is not lowered. Thus, the quality of content promoted from development for loading into upper IT environments is critical to the availability and proper functioning of business applications to their end users.
It is generally accepted in the IT environment that the later in the process (or higher in the promotion scheme) that problems are found, the more expensive the correction is to make.
Typical solutions to try to address such problems employ extra product environments into which complete data loading is performed in order to validate integrity of data. This is inefficient because of hardware, software and project overheads in installing, configuring these environments, which at their best, are a complete duplicate of the targeted production systems, thereby causing a doubling of cost and size of the required technology. To save costs, power, and size, many pre-production environments are only partially representative of the final production system, saving cost of the test platforms, but adding risk to the final promotion to production environments.